<template>
  <div @click.prevent="handleClick" class="mi-btn-box flex-col-center">
    <button  class="button">
      <slot></slot>
    </button>
  </div>
</template>

<script>
export default {
  name: "MiButton1",
  methods:{
    handleClick(){
      this.$emit("click")
    }
  }
}
</script>

<style scoped>
.mi-btn-box{
  width: 100%;
  height: 100%;
}
.button {
  display: inline-block;
  padding: 12px 24px;
  border: 1px solid white;
  border-radius: 4px;
  transition: all 0.2s ease-in;
  position: relative;
  overflow: hidden;
  font-size: 18px;
  color: black;
  z-index: 1;
  width: 100%;
  height: 100%;

  cursor: pointer;
  caret-color: transparent;
}

.button:before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%) scaleY(1) scaleX(1.25);
  top: 100%;
  width: 140%;
  height: 180%;
  background-color: rgba(0, 0, 0, 0.05);
  border-radius: 50%;
  display: block;
  transition: all 0.5s 0.1s cubic-bezier(0.55, 0, 0.1, 1);
  z-index: -1;
}

.button:after {
  content: "";
  position: absolute;
  left: 55%;
  transform: translateX(-50%) scaleY(1) scaleX(1.45);
  top: 180%;
  width: 160%;
  height: 190%;
  background-color: #39bda7;
  border-radius: 50%;
  display: block;
  transition: all 0.5s 0.1s cubic-bezier(0.55, 0, 0.1, 1);
  z-index: -1;
}

.button:hover {
  color: #ffffff;
  border: 1px solid #39bda7;
}

.button:hover:before {
  top: -35%;
  background-color: #39bda7;
  transform: translateX(-50%) scaleY(1.3) scaleX(0.8);
}

.button:hover:after {
  top: -45%;
  background-color: #39bda7;
  transform: translateX(-50%) scaleY(1.3) scaleX(0.8);
}

</style>